<?php
namespace CAI\HistoricoBundle\Form\Type;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
use Doctrine\ORM\EntityRepository;

class PartidoType extends AbstractType
{
	public function buildForm(FormBuilderInterface $builder, array $options)
	{
		$builder
		->add('equipo', 'entity', array('class' => 'CAIHistoricoBundle:Equipo',
				'query_builder' => function(EntityRepository $er) {
					return $er->createQueryBuilder('e')
					->orderBy('e.equipos_nombre', 'ASC');
				}))
		->add('torneoInstancia', 'entity', array('class' => 'CAIHistoricoBundle:TorneoInstancia', 
				'query_builder' => function(EntityRepository $er) {
					$year = date("Y");
					return $er->createQueryBuilder('ti')
					->where('ti.torneos_instancias_anio = '.$year)
					->orderBy('ti.torneos_instancias_nombre', 'ASC');
				}))
		->add('persona', 'entity', array('class' => 'CAIHistoricoBundle:Tecnico', 
				'query_builder' => function(EntityRepository $er) {
					return $er->createQueryBuilder('dt')
					->where('dt.tecnicos_activo = 1');
				}))
		->add('arbitro', 'entity', array('class' => 'CAIHistoricoBundle:Arbitro',
				'query_builder' => function(EntityRepository $er) {
					return $er->createQueryBuilder('ar')
					->orderBy('ar.personas_nombre', 'ASC');
				}))
		->add('partidosInstancia', 'text')
		->add('partidosGolesCai', 'text')
		->add('partidosGolesRival', 'text')
		->add('partidosCondicion', 'choice', array('choices' => array('L'=>'Local', 'V'=>'Visitante', 'N'=>'Neutral')));
	}

	public function getName()
	{
		return 'partido';
	}
	
	public function setDefaultOptions(OptionsResolverInterface $resolver)
	{
		$resolver->setDefaults(array(
				'data_class' => 'CAI\HistoricoBundle\Entity\Partido',
		));
	}
}